package com.nyist.myticket.core.quartz.trigger;

import com.nyist.myticket.core.quartz.job.MailToWeatherScheduler;
import org.quartz.*;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

/**
 * @author yangxiaogen
 * @date 2020/12/28 16:39
 */
@Configuration
public class QuartzTriggerConfig {

	@Bean
	public JobDetail mailToWeatherSchedulerDetail(){
		return JobBuilder.newJob(MailToWeatherScheduler.class)
                .withIdentity("mailToWeatherScheduler")
				.storeDurably()  // 持久化存储的, 没必要现在
                .build();
	}

	@Bean
	public Trigger majorTaskTrigger() {
	    // https://cron.qqe2.com/ 自动生成 cron 表达式
		// 秒 分 时 日 月 年
		String data = "0 0 9 4/1 * ? ";  // 从4号开始每天九点发送信息
		String datas = "0 0/2 * * * ? "; // 每两分钟发送一次信息
		CronScheduleBuilder scheduleBuilder = CronScheduleBuilder.cronSchedule(data);
		return TriggerBuilder.newTrigger()
                .forJob(mailToWeatherSchedulerDetail())
                .withIdentity("mailToWeatherScheduler")
                .withSchedule(scheduleBuilder)
				.build();
	}
}
